package com.agileboot.domain.airport.inspectionCheck.dto;

import cn.hutool.core.bean.BeanUtil;
import com.agileboot.domain.airport.inspectionCheck.db.SirInspectionCheckEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@AllArgsConstructor
@NoArgsConstructor
@Data
public class InspectionCheckDTO {

    public InspectionCheckDTO(SirInspectionCheckEntity entity) {
        if (entity != null) {
            BeanUtil.copyProperties(entity, this);
        }
    }

    private Long inspectionCheckId;
    private Long inspectionId;
    private Long selfcheckId;
    private Long inspectionUserId;
    private String inspectionResult;
    private byte[] inspectionQuestion;
    private Date inspectionDeadlineTime;
    private String rectificationRequire;
    private String directCause;
    private String fundamentalCause;
    private String correctMeasure;
    private Date correctMeasureDeadlineTime;
    private Date correctMeasureDealTime;
    private String correctMeasureDealPeople;
    private String correctMeasureResult;
    private String preventionMeasure;
    private Date preventionMeasureDeadlineTime;
    private Date preventionMeasureDealTime;
    private String preventionMeasureDealPeople;
    private String preventionMeasureResult;
    private String createBy;
    private Date createTime;
    private String remark;
    private String dealType;
    private Long relationId;
    private String relationType;
    private Date startTime;
    private Date endTime;
    private String feedback;
    private byte[] positiveProof;
    private Long checkTermId;
    private Long checkStandardId;
    private String checkTermCode;
    private String checkOpinion;
    private String checkSign;
    private Long inspectionDeptId;
    private Integer status;
    private String dealResult;
    private Long creatorId;
    private Long updaterId;
    private Boolean deleted;
    private Date updateTime;
    private Long dutyDeptId;
    private Long curDealDeptId;
    private String dutyDeptName;
    private String curDealDeptName;
    private String tittle;

    // 新增字段
    private String inspectionUserName;
    private String inspectionName;
    private String inspectionDeptName;
    private String determinationStandard;

    // 自查事项库字段
    private String professional;
    private String checkContent;
    private String checkStandardCode;
    private String checkStandard;
    private String complianceCriteria;
    private String checkMethod;
    private String companyBasis;
    private String companyClause;
    private String lawsBasis;
    private String lawsClause;
    private String baseCycle;
    private String integrationSource;
    private String checkDepartments;

    private String checkDeptName;
    private String inspectedDeptName;

    private String reportId;
    private String reformCode;


}
